SET(KIT Filtering)
SET(UKIT FILTERING)
SET(KIT_TCL_LIBS vtkCommonTCL)
SET(KIT_PYTHON_LIBS vtkCommonPythonD)
SET(KIT_JAVA_LIBS vtkCommonJava)
SET(KIT_INTERFACE_LIBRARIES vtkCommon)

SET( Kit_SRCS
vtkImageToStructuredGrid.cxx
vtkAbstractCellLocator.cxx
vtkAbstractImageInterpolator.cxx
vtkAbstractInterpolatedVelocityField.cxx
vtkAbstractMapper.cxx
vtkAbstractPointLocator.cxx
vtkActor2DCollection.cxx
vtkActor2D.cxx
vtkAdjacentVertexIterator.cxx
vtkAlgorithm.cxx
vtkAlgorithmOutput.cxx
vtkAMRBox.cxx
vtkAnnotation.cxx
vtkAnnotationLayers.cxx
vtkAnnotationLayersAlgorithm.cxx
vtkAtom.cxx
vtkAttributesErrorMetric.cxx
vtkBiQuadraticQuad.cxx
vtkBiQuadraticQuadraticHexahedron.cxx
vtkBiQuadraticQuadraticWedge.cxx
vtkBiQuadraticTriangle.cxx
vtkBond.cxx
vtkBSPCuts.cxx
vtkBSPIntersections.cxx
vtkCachedStreamingDemandDrivenPipeline.cxx
vtkCardinalSpline.cxx
vtkCastToConcrete.cxx
vtkCell3D.cxx
vtkCellArray.cxx
vtkCell.cxx
vtkCellData.cxx
vtkCellLinks.cxx
vtkCellLocator.cxx
vtkCellTreeLocator.cxx
vtkCellTypes.cxx
vtkColorTransferFunction.cxx
vtkCompositeDataIterator.cxx
vtkCompositeDataPipeline.cxx
vtkCompositeDataSetAlgorithm.cxx
vtkCompositeDataSet.cxx
vtkComputingResources.cxx
vtkCone.cxx
vtkConvexPointSet.cxx
vtkCoordinate.cxx
vtkCubicLine.cxx
vtkCylinder.cxx
vtkDataObjectAlgorithm.cxx
vtkDataObjectCollection.cxx
vtkDataObject.cxx
vtkDataObjectSource.cxx
vtkDataObjectTypes.cxx
vtkDataSetAlgorithm.cxx
vtkDataSetAttributes.cxx
vtkDataSetCollection.cxx
vtkDataSet.cxx
vtkDataSetSource.cxx
vtkDataSetToDataSetFilter.cxx
vtkDataSetToImageFilter.cxx
vtkDataSetToPolyDataFilter.cxx
vtkDataSetToStructuredGridFilter.cxx
vtkDataSetToStructuredPointsFilter.cxx
vtkDataSetToUnstructuredGridFilter.cxx
vtkDemandDrivenPipeline.cxx
vtkDirectedAcyclicGraph.cxx
vtkDirectedGraphAlgorithm.cxx
vtkDirectedGraph.cxx
vtkDiscretizableColorTransferFunction.cxx
vtkDistributedGraphHelper.cxx
vtkEdgeListIterator.cxx
vtkEmptyCell.cxx
vtkExecutionScheduler.cxx
vtkExecutionSchedulerManager.cxx
vtkExecutive.cxx
vtkExecutiveCollection.cxx
vtkExplicitCell.cxx
vtkFieldData.cxx
vtkFilteringInformationKeyManager.cxx
vtkGenericAdaptorCell.cxx
vtkGenericAttributeCollection.cxx
vtkGenericAttribute.cxx
vtkGenericCell.cxx
vtkGenericCellIterator.cxx
vtkGenericCellTessellator.cxx
vtkGenericDataSetAlgorithm.cxx
vtkGenericDataSet.cxx
vtkGenericEdgeTable.cxx
vtkGenericInterpolatedVelocityField.cxx
vtkGenericPointIterator.cxx
vtkGenericSubdivisionErrorMetric.cxx
vtkGeometricErrorMetric.cxx
vtkGraphAlgorithm.cxx
vtkGraph.cxx
vtkGraphEdge.cxx
vtkGraphInternals.cxx
vtkGraphWeightFilter.cxx
vtkGraphWeightEuclideanDistanceFilter.cxx
vtkHexagonalPrism.cxx
vtkHexahedron.cxx
vtkHierarchicalBoxDataIterator.cxx
vtkHierarchicalBoxDataSetAlgorithm.cxx
vtkHierarchicalBoxDataSet.cxx
vtkHyperOctreeAlgorithm.cxx
vtkHyperOctreeCursor.cxx
vtkHyperOctree.cxx
vtkHyperOctreePointsGrabber.cxx
vtkImageAlgorithm.cxx
vtkImageBSplineInternals.cxx
vtkImageBSplineInterpolator.cxx
vtkImageData.cxx
vtkImageInPlaceFilter.cxx
vtkImageInterpolator.cxx
vtkImageIterator.cxx
vtkImageMultipleInputFilter.cxx
vtkImageMultipleInputOutputFilter.cxx
vtkImageProgressIterator.cxx
vtkImageSincInterpolator.cxx
vtkImageSource.cxx
vtkImageToImageFilter.cxx
vtkImageToStructuredPoints.cxx
vtkImageTwoInputFilter.cxx
vtkImplicitBoolean.cxx
vtkImplicitDataSet.cxx
vtkImplicitHalo.cxx
vtkImplicitSelectionLoop.cxx
vtkImplicitSum.cxx
vtkImplicitVolume.cxx
vtkImplicitWindowFunction.cxx
vtkIncrementalOctreeNode.cxx
vtkIncrementalOctreePointLocator.cxx
vtkIncrementalPointLocator.cxx
vtkInEdgeIterator.cxx
vtkInformation.cxx
vtkInformationExecutivePortKey.cxx
vtkInformationExecutivePortVectorKey.cxx
vtkInterpolatedVelocityField.cxx
vtkKdNode.cxx
vtkKdTree.cxx
vtkKdTreePointLocator.cxx
vtkKochanekSpline.cxx
vtkLine.cxx
vtkLinearSelector.cxx
vtkLocator.cxx
vtkMapper2D.cxx
vtkMeanValueCoordinatesInterpolator.cxx
vtkMergePoints.cxx
vtkMarchingSquaresLineCases.cxx
vtkMarchingCubesTriangleCases.cxx
vtkMolecule.cxx
vtkMultiBlockDataSetAlgorithm.cxx
vtkMultiBlockDataSet.cxx
vtkMultiPieceDataSet.cxx
vtkMutableDirectedGraph.cxx
vtkMutableUndirectedGraph.cxx
vtkNonLinearCell.cxx
vtkNonMergingPointLocator.cxx
vtkOctreePointLocator.cxx
vtkOctreePointLocatorNode.cxx
vtkOrderedTriangulator.cxx
vtkOutEdgeIterator.cxx
vtkParametricSpline.cxx
vtkPassInputTypeAlgorithm.cxx
vtkPentagonalPrism.cxx
vtkPerlinNoise.cxx
vtkPiecewiseFunctionAlgorithm.cxx
vtkPiecewiseFunction.cxx
vtkPiecewiseFunctionShiftScale.cxx
vtkPixel.cxx
vtkPlanesIntersection.cxx
vtkPointData.cxx
vtkPointLocator.cxx
vtkPointSetAlgorithm.cxx
vtkPointSet.cxx
vtkPointSetSource.cxx
vtkPointSetToPointSetFilter.cxx
vtkPointsProjectedHull.cxx
vtkPolyDataAlgorithm.cxx
vtkPolyDataCollection.cxx
vtkPolyData.cxx
vtkPolyDataSource.cxx
vtkPolyDataToPolyDataFilter.cxx
vtkPolygon.cxx
vtkPolyhedron.cxx
vtkPolyLine.cxx
vtkPolyPlane.cxx
vtkPolyVertex.cxx
vtkProcessObject.cxx
vtkPropAssembly.cxx
vtkPyramid.cxx
vtkQuad.cxx
vtkQuadraticEdge.cxx
vtkQuadraticHexahedron.cxx
vtkQuadraticLinearQuad.cxx
vtkQuadraticLinearWedge.cxx
vtkQuadraticPyramid.cxx
vtkQuadraticQuad.cxx
vtkQuadraticTetra.cxx
vtkQuadraticTriangle.cxx
vtkQuadraticWedge.cxx
vtkRectilinearGridAlgorithm.cxx
vtkRectilinearGrid.cxx
vtkRectilinearGridSource.cxx
vtkRectilinearGridToPolyDataFilter.cxx
vtkReebGraph.cxx
vtkReebGraphSimplificationMetric.cxx
vtkScalarTree.cxx
vtkSelectionAlgorithm.cxx
vtkSelection.cxx
vtkSelectionNode.cxx
vtkSimpleCellTessellator.cxx
vtkSimpleImageToImageFilter.cxx
vtkSimpleScalarTree.cxx
vtkSmoothErrorMetric.cxx
vtkSource.cxx
vtkSphere.cxx
vtkSpline.cxx
vtkStreamingDemandDrivenPipeline.cxx
vtkStructuredGridAlgorithm.cxx
vtkStructuredGrid.cxx
vtkStructuredGridSource.cxx
vtkStructuredGridToPolyDataFilter.cxx
vtkStructuredGridToStructuredGridFilter.cxx
vtkStructuredPointsCollection.cxx
vtkStructuredPoints.cxx
vtkStructuredPointsSource.cxx
vtkStructuredPointsToPolyDataFilter.cxx
vtkStructuredPointsToStructuredPointsFilter.cxx
vtkStructuredPointsToUnstructuredGridFilter.cxx
vtkSuperquadric.cxx
vtkTableAlgorithm.cxx
vtkTable.cxx
vtkTemporalDataSetAlgorithm.cxx
vtkTemporalDataSet.cxx
vtkTetra.cxx
vtkThreadedImageAlgorithm.cxx
vtkThreadedStreamingPipeline.cxx
vtkTreeAlgorithm.cxx
vtkTree.cxx
vtkTreeBFSIterator.cxx
vtkTreeDFSIterator.cxx
vtkTreeIterator.cxx
vtkTriangle.cxx
vtkTriangleStrip.cxx
vtkTriQuadraticHexahedron.cxx
vtkTrivialProducer.cxx
vtkUndirectedGraphAlgorithm.cxx
vtkUndirectedGraph.cxx
vtkUniformGrid.cxx
vtkUnstructuredGridAlgorithm.cxx
vtkUnstructuredGrid.cxx
vtkUnstructuredGridSource.cxx
vtkUnstructuredGridToPolyDataFilter.cxx
vtkUnstructuredGridToUnstructuredGridFilter.cxx
vtkVertex.cxx
vtkVertexListIterator.cxx
vtkViewDependentErrorMetric.cxx
vtkViewport.cxx
vtkVoxel.cxx
vtkWedge.cxx
)

SET_SOURCE_FILES_PROPERTIES(
vtkAbstractCellLocator
vtkAbstractImageInterpolator
vtkAbstractInterpolatedVelocityField
vtkAbstractMapper
vtkAbstractPointLocator
vtkCell
vtkCell3D
vtkCompositeDataIterator
vtkCompositeDataSet
vtkDataObjectSource
vtkDataSet
vtkDataSetSource
vtkDataSetToDataSetFilter
vtkDataSetToImageFilter
vtkDataSetToPolyDataFilter
vtkDataSetToStructuredGridFilter
vtkDataSetToStructuredPointsFilter
vtkDataSetToUnstructuredGridFilter
vtkDistributedGraphHelper
vtkExecutive
vtkExplicitCell
vtkFilteringInformationKeyManager
vtkGenericAdaptorCell
vtkGenericAttribute
vtkGenericCellIterator
vtkGenericCellTessellator
vtkGenericDataSet
vtkGenericDataSetAlgorithm
vtkGenericPointIterator
vtkGenericSubdivisionErrorMetric
vtkGraph
vtkGraphWeightFilter
vtkHyperOctreeAlgorithm
vtkHyperOctreeCursor
vtkHyperOctreePointsGrabber
vtkImageAlgorithm
vtkImageInPlaceFilter
vtkImageIterator
vtkImageMultipleInputFilter
vtkImageMultipleInputOutputFilter
vtkImageProgressIterator
vtkImageSource
vtkImageToImageFilter
vtkImageTwoInputFilter
vtkIncrementalPointLocator
vtkInformationExecutivePortKey
vtkInformationExecutivePortVectorKey
vtkLocator
vtkMapper2D
vtkNonLinearCell
vtkPointSet
vtkPointSetSource
vtkPointSetToPointSetFilter
vtkPolyDataSource
vtkPolyDataToPolyDataFilter
vtkProcessObject
vtkRectilinearGridSource
vtkRectilinearGridToPolyDataFilter
vtkScalarTree
vtkSimpleImageToImageFilter
vtkSource
vtkSpline
vtkStructuredGridSource
vtkStructuredGridToPolyDataFilter
vtkStructuredGridToStructuredGridFilter
vtkStructuredPointsSource
vtkStructuredPointsToPolyDataFilter
vtkStructuredPointsToStructuredPointsFilter
vtkStructuredPointsToUnstructuredGridFilter
vtkThreadedImageAlgorithm
vtkTreeIterator
vtkUnstructuredGridSource
vtkUnstructuredGridToPolyDataFilter
vtkUnstructuredGridToUnstructuredGridFilter
vtkViewport
  ABSTRACT
)

SET_SOURCE_FILES_PROPERTIES(
  vtkAMRBox.cxx
  vtkAtom.cxx
  vtkBond.cxx
  vtkExecutionSchedulerManager.cxx
  vtkFilteringInformationKeyManager.cxx
  vtkImageBSplineInternals.cxx
  vtkImageIterator.cxx
  vtkInformation.cxx
  vtkImageProgressIterator.cxx
  vtkMarchingSquaresLineCases.cxx
  vtkMarchingCubesTriangleCases.cxx
  WRAP_EXCLUDE
)

SET_SOURCE_FILES_PROPERTIES(
  vtkAtom.cxx
  vtkBond.cxx
  vtkImageBSplineInternals.cxx

  PROPERTIES WRAP_SPECIAL 1
)

SET(Kit_EXTRA_SRCS)
SET(Kit_EXTRA_CMDS)
SET(Kit_TCL_EXTRA_SRCS)
SET(Kit_PYTHON_EXTRA_SRCS)
SET(Kit_JAVA_EXTRA_SRCS)
SET(KIT_TCL_DEPS)
SET(KIT_PYTHON_DEPS)
SET(KIT_JAVA_DEPS)

IF(VTK_USE_N_WAY_ARRAYS)

  SET(Kit_SRCS
    ${Kit_SRCS}
    vtkArrayData.cxx
    vtkArrayDataAlgorithm.cxx
    )

ENDIF(VTK_USE_N_WAY_ARRAYS)

SET(Kit_WRAP_HEADERS
  vtkCellType.h
  )

#-----------------------------------------------------------------------------
# Include CMake code common to all kits.
INCLUDE(${VTK_CMAKE_DIR}/KitCommonBlock.cmake)
#-----------------------------------------------------------------------------

IF(CMAKE_COMPILER_IS_GNUCXX AND MINGW)
  # MinGW fails to dllexport the explicit instantiations of
  # the image iterators, so we must export all symbols.
  GET_TARGET_PROPERTY(VTK_FILTERING_LINK_FLAGS vtkFiltering LINK_FLAGS)
  IF(VTK_FILTERING_LINK_FLAGS)
    SET(VTK_FILTERING_LINK_FLAGS "${VTK_FILTERING_LINK_FLAGS} ")
  ELSE(VTK_FILTERING_LINK_FLAGS)
    SET(VTK_FILTERING_LINK_FLAGS)
  ENDIF(VTK_FILTERING_LINK_FLAGS)
  SET_TARGET_PROPERTIES(vtkFiltering PROPERTIES
    LINK_FLAGS "${VTK_FILTERING_LINK_FLAGS}-Wl,--export-all-symbols")
ENDIF(CMAKE_COMPILER_IS_GNUCXX AND MINGW)

IF(NOT VTK_INSTALL_NO_DEVELOPMENT)
  INSTALL(FILES
    ${CMAKE_CURRENT_SOURCE_DIR}/vtkCellType.h
    ${CMAKE_CURRENT_SOURCE_DIR}/vtkImageIterator.txx
    ${CMAKE_CURRENT_SOURCE_DIR}/vtkImageProgressIterator.txx
    ${CMAKE_CURRENT_SOURCE_DIR}/vtkImageInterpolatorInternals.h
    DESTINATION ${VTK_INSTALL_INCLUDE_DIR_CM24}
    COMPONENT Development
    )
ENDIF(NOT VTK_INSTALL_NO_DEVELOPMENT)
